package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目对象 cst_project
 * 
 * @author zjw
 * @date 2023-01-04
 */
public class CstProject extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目ID */
    private Long projectId;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 计划完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date plannedTime;

    /** 合同金额 */
    @Excel(name = "合同金额")
    private Long contractAmount;

    /** 已收款金额 */
    @Excel(name = "已收款金额")
    private Long receivedAmount;

    /** 负责人 */
    @Excel(name = "负责人")
    private String director;

    /** 合同对方ID */
    @Excel(name = "合同对方ID")
    private Long counterpartyId;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setPlannedTime(Date plannedTime) 
    {
        this.plannedTime = plannedTime;
    }

    public Date getPlannedTime() 
    {
        return plannedTime;
    }
    public void setContractAmount(Long contractAmount) 
    {
        this.contractAmount = contractAmount;
    }

    public Long getContractAmount() 
    {
        return contractAmount;
    }
    public void setReceivedAmount(Long receivedAmount) 
    {
        this.receivedAmount = receivedAmount;
    }

    public Long getReceivedAmount() 
    {
        return receivedAmount;
    }
    public void setDirector(String director) 
    {
        this.director = director;
    }

    public String getDirector() 
    {
        return director;
    }
    public void setCounterpartyId(Long counterpartyId) 
    {
        this.counterpartyId = counterpartyId;
    }

    public Long getCounterpartyId() 
    {
        return counterpartyId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("projectId", getProjectId())
            .append("projectName", getProjectName())
            .append("startTime", getStartTime())
            .append("plannedTime", getPlannedTime())
            .append("contractAmount", getContractAmount())
            .append("receivedAmount", getReceivedAmount())
            .append("director", getDirector())
            .append("counterpartyId", getCounterpartyId())
            .append("userId", getUserId())
            .toString();
    }
}
